package fr.afcepf.atod18.utilitaires.service;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import fr.afcepf.atod18.utilitaires.dao.IGenericDao;
import fr.afcepf.atod18.utilitaires.entity.Adresse;

@Service
@Transactional
public class ServiceAdresse implements IServiceAdresse {
	@Autowired
	IGenericDao<Adresse> daoAdresse;


	@Override
	public void ajouter(Adresse adresse) {
		daoAdresse.save(adresse);
	}
	@Override
	public Adresse mettreAJour(Adresse adresse) {
	    return daoAdresse.update(adresse);
	}
	@Override
	public Adresse rechercherParId(int id) {
	    return daoAdresse.findOne(id);
	}
	@Override
	public List<Adresse> rechercherTout() {
		return daoAdresse.findAll();
	}
	@Override
	public void supprimerParId(int id) {
	    daoAdresse.deleteById(id);
	}
	@Override
	public void supprimer(Adresse adresse) {
	    daoAdresse.delete(adresse);
	}
    @Override
	public void supprimerListe(List<Adresse> liste) {
		daoAdresse.deleteList(liste);
	}
    @Override
    public List<Adresse> rechercherParNom(String nomColonne, String libelle) {
        return daoAdresse.findByName(nomColonne, libelle);
    }


    public IGenericDao<Adresse> getDaoAdresse() {
		return daoAdresse;
	}
	public void setDaoAdresse(IGenericDao<Adresse> daoAdresse) {
		this.daoAdresse = daoAdresse;
	}
}
